package com.school.manager.filter;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;

import com.school.manager.common.Constants;
import com.school.manager.entity.po.SysUserPo;

import lombok.extern.slf4j.Slf4j;

/**
 * description：登录拦截器
 * date：2021d/10/127:12 下午
 */

@Slf4j
public class LoginInterceptor implements HandlerInterceptor {
	
	@Override
	public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
			throws Exception {
		SysUserPo user = (SysUserPo)request.getSession().getAttribute(Constants.CURRENT_USER);
		if (user == null) {
			log.error("需要重新登录！");
			log.error(request.getRequestURI().toString());
			response.sendRedirect(request.getContextPath() + "/login");
			return false;
		}
		log.error("放行");
		return true;
	}
	
	@Override
	public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
			ModelAndView modelAndView) throws Exception {
		// TODO Auto-generated method stub
		HandlerInterceptor.super.postHandle(request, response, handler, modelAndView);
	}
	
	@Override
		public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)
				throws Exception {
			// TODO Auto-generated method stub
			HandlerInterceptor.super.afterCompletion(request, response, handler, ex);
		}

}
